iT邦幫忙

DAY 2
1

發開相關系列 第 2

NuGet系列-使用NuGet Package Explorer建立nupkg檔

  • 分享至 

  • xImage
  •  

目前建立nupkg檔的方式有二種,使用NuGet命令列工具或NuGet Package Explorer GUI工具,個人是覺得先用NuGet Package Explorer建立nuspec,之後在用NuGet命令列與MSBuild編譯後自動上傳,會比較方便。
NuGet Package Explorer下載位址:http://nuget.codeplex.com/releases
開啟後,可以選擇打開本地的nupkg或nuspec,或是線上的nupkg(包含官方的nupkg下來修改,只是沒有apiKey無法上傳,但是可以學習別人怎麼樣包nupkg),或建立新的nupkg。

產生nupkg

選擇Create a new package,會使用範本建立一個nuspec(工具中叫Metadata),必需要按下Edit Package Metadata後才能編輯nuspec。

設定nuspec
填上基本資料後,比較特別是Dependencies、Framework assemblies、Filtered assembly references這三個選項。

Dependencies
Dependencies是相依性,這個nupkg所相依的nupkg,在下載nupkg時會同時下載所相依的nupkg,不限同一個Package Source,以Package Id搜尋最先找到的那一個。

Framework assemblies
安裝時同時將GAC組件加入參考,Supported frameworks輸入方式如下表。

Filtered assembly references
如果是空的會要將所有lib下的dll加入參加,如果有指定,只加入指定的dll,如下圖最後只有Elmah.dll會加入參考。
http://files.dotblogs.com.tw/wadehuang36/1110/NuGet-_4CF8/image_14.png

增加Contents
有三個根目錄,content、lib、tools各有不同的作用,新增檔案可以用右鍵新增,或者是直接拖曳檔案到視窗中。

content 會加入到專案為一般檔案。
lib dll檔案會加入參考。
Tools 安裝或反安裝要執行的PowerShell或一些有的沒的檔案。

根目錄
通常放一些說明或受權資訊。

更新Contents
如果是開啟本機nupkg,工具會記錄檔案的絶對路徑,會自動更新內容,但如果是開Server上的nupkg,需要在檔案上按右鍵更新。

發佈nupkg
NuGet Package Explorer也有提供發佈nupkg的功能,在File > Publish下。

Publish Key為GUID,要發佈到官網,Key在註冊後會給,要發佈到自己架的NuGet Server,Key為Web.Config中的apiKey。
Only push package to gallery but do not publish it.選項只有發佈到官網才有用。

文章原稿:http://www.dotblogs.com.tw/wadehuang36/archive/2011/10/06/nuget-package-explorer.aspx


上一篇
NuGet系列-建立自己的NuGet Server
下一篇
NuGet系列-自動發佈
系列文
發開相關7
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言